package br.com.cocodonto.modelo.dao;

import java.sql.SQLException;

import br.com.cocodonto.framework.dao.DaoHelper;
import br.com.cocodonto.modelo.entidade.Contato;

public class ContatoDao {
	
	private DaoHelper daoHelper;
		
	public ContatoDao() {
		daoHelper = new DaoHelper();
	}
	
	public void inserir (Contato contato) throws SQLException{
		long id = 0l;
		
		id = daoHelper.executePreparedUpdateAndReturnGeneratedKeys("insert into app.contato (email, fax, celular, telefone) values (?, ?, ?, ?)"
														, contato.getEmail()
														, contato.getFax()
														, contato.getCelular()
														, contato.getTelefone());
		contato.setId(id);
		
	}
	
	public void atualizar (Contato contato) throws SQLException{
		String query = "update contato set email=?, fax=?, celular=?, telefone=? where id =?";
		daoHelper.executePreparedUpdate(query
										, contato.getEmail()
										, contato.getFax()
										, contato.getCelular()
										, contato.getTelefone()
										, contato.getId());
	}
	
	public void delete (Contato contato) throws SQLException{
		try{
			daoHelper.beginTransaction();
			daoHelper.executePreparedUpdate("delete from contato where id =?", contato.getId());
			daoHelper.endTransaction();
		} catch(SQLException e){
			daoHelper.rollbackTransaction();
		}
		
	}

}
